迪文屏DMT12800K070 |
您所在的位置:网站首页 › sd卡规格 图片 › 迪文屏DMT12800K070 |
项目开发需求用迪文屏设计人机交互界面,接触了几天,体验如何,不做评价。有此一文,以预防将来还有用到这东西做开发,但是自己把之前学的基本忘光而被迫回去分析官方资料的情况(如果可以真不想再看第二次,最多最多去查个表)。 目录 一、准备工作1. 资料获取1.1 迪文官网1.2 迪文开发者论坛 2. 上电与串口通信2.1 连接方式与驱动检查2.2 UART2串口通信协议2.3 串口通信测试 3. 新建工程3.1 开发软件版本选择3.2 设置分辨率 二、起步阶段1. 等待初始化页面1.1 添加背景图片1.2 制作ICO图标库文件1.3 添加动画图标1.4 添加0号字库1.5 SD卡接口下载工程1.6 串口通信:页面切换指令 2. 初步规划主页面2.1 更换背景图片2.2 放置RTC显示控件2.3 放置文本显示控件2.4 添加基础触控2.5 串口通信:RTC读取与修改 一、准备工作 1. 资料获取 1.1 迪文官网 拿到迪文屏第一步,看一下对应型号的数据手册,获取相关的显示规格及电气参数。数据手册可以在 迪文官网 查找: 到迪文开发者论坛的 帖子1 下载详细一些的应用开发指南,记得先看产品型号和软件平台对应表,根据这个选择要下载的文档(在之前下载的数据手册里应该也会有指明该产品使用的 UI 版本): 注意:帖子1 里提供的手册都是 T5 系列的而非 T5L 系列的,这两者存在区别,并不能通用。 最后还可以在 帖子3 的大概位置下载对应迪文屏型号的 DEMO,这算是相当有力的参考资料了。 2. 上电与串口通信 2.1 连接方式与驱动检查 8pin 接口与 HDL65011 连接线为本文实际调试所用连接方式: 在描述协议数据帧结构前,需要明确几点: 每个串口数据的传送采用 10 个位,包括 1 个起始位,8 个数据位,1 个停止位;串口的所有指令或数据都是 16 进制(HEX) 格式;对于字型(2字节)数据,规定采用 MSB(高字节优先传送) 方式;最好不要在一个 DGUS 周期(40 ms)内发送超过 4KB 的数据给 DGUS 屏。 数据帧结构如下: PS:实际上指令一共有 4 个:80/81 是寄存器级别的写和读,82/83 则是变量级别的写和读。一般用户使用 82/83 就能基本满足需求了。
给显示屏上电,打开串口助手,配置好串口参数: 迪文屏的软件有很多不同的版本,其中一些版本只适用于特定系列的迪文屏。比如博主这里的两个版本,V7385 并没有对迪文屏型号有规定,而 V7592 则在软件内部的版本说明里指出 “该版本仅适用于 T5L”,因此博主选择使用的开发软件版本为 V7385。 直接点新建工程就会弹出属性设置对话框。这里按实际使用的迪文屏显示分辨率填(可以手动修改): 先把第一页做出来。开机动画和开机音乐就免了,咱不搞这些花里胡哨的,就让显示屏上电显示等待初始化页面,然后在 PC 端模拟板载系统,初始化完成了就用串口发信号给迪文屏,迪文屏就显示跳转到主页面。 1.1 添加背景图片 直接在下图的位置添加: T5UID3 的 256MB Flash 中,可以用来存放图片的空间有 192MB; 要添加的背景图片能正常显示必须满足四个条件:BMP格式、位深度24、分辨率与工程所设相同、命名为 序号ID +(可选的)补充文件名。 1.2 制作ICO图标库文件 首先找好 GIF 素材(不用太大),然后用小工具将其逐帧分解为位深度24 的 BMP 图片,并用序号ID重命名(咱比较懒就用脚本代劳了) ICO 文件中图片的分辨率最大不超过 1024*1024 像素,超过了会被强制压缩; 编号40并不是唯一选择,23~127都可以用: FLASH 存储空间中,单个字库空间为 256KB 大小。当单个图标库文件超过 256KB 时,需要严格计算该图标库所占空间,否则可能会造成图标区间位置冲突而导致显示异常。比如刚才生成的 ICO 文件大小为 1.24MB,则占用空间值 1.24 * 1024 / 256 = 4.96,即占用 40、41、42、43、44 这5个字库空间,因此下一个图标库命名要从 45 开始。 回到 000.bmp 的设计页面下,将动画图标显示控件放置到背景图片上(不用刻意调整控件大小,选择好显示图标后会自适应调节): 描述指针直接保持用 0xFFFF 即可,表示由配置文件加载; 变量地址的可选范围为 0x1000~0xFFFF,且变量地址的选择与字库空间类似,一个变量地址内最多可以容纳 2字节的内容,比如下面那张示例图片中,下一个可用变量的地址只能设置为 0x1006 往后了(最好保持为偶数,使用奇数地址可能会出现不明的问题): 开始值和停止值为动画图标控件进行动画显示的设定阈值,配合初始值和触碰控件的按键值返回使用可以起到控制作用,这里的设置方式实际上就是让动画图片控件直接开始动画显示(动画显示模式和背景显示模式应该就没必要说明了吧,有兴趣就自己试); 单个图标显示时间是以 DGUS 周期为单位的计数器。T5UID3 中规定一个 DGUS 周期为 40ms,这也就意味着要想动画图标显示的刷新上限就是 40ms一帧,即帧率最高只有 25fps(欲言又止.jpg)。 可以在这里预览一下目前的工程下载到迪文屏里的显示效果: 如果在预览的时候弹出了这个提示,就说明软件没有在 DWIN_SET 文件夹下检测到 0号字库文件: SD卡也有要求(真麻烦),内存大小要在 1~16GB 之间,FAT32格式,而且单个扇区的大小必须为 4KB。 在确保 SD 卡能被迪文屏正常识别的条件下下载过程很简单,把工程目录下的 DWIN_SET 文件夹整个复制到 SD 卡里,然后给迪文屏上电,插入 SD 卡,等蓝屏下显示处理完成后拔掉 SD 卡,再给迪文屏掉电、上电就会开始跑刚才下载进去的工程了。 预留的系统变量中已经提供了进行页面跳转的串口指令(NND,一顿好找,这文档真绝): PS:这个串口指令预计会比较常用,可以打包成函数的形式,预留参数就是要跳转到的页面的ID。 2. 初步规划主页面后面的界面还没有想好怎么设计,就先按着例程里的设计来吧,把主页面的大致轮廓规划一下。 2.1 更换背景图片 为方便后续更换图片源,先把之前工程里的后面几张背景图片同一更换为纯色图片。方法也很简单:首先保存工程并关闭 DGUS 软件,然后将准备好的图片按序号ID重命名,直接复制到 DWIN_SET 文件夹下将原来的图片替换掉,然后重新打开 DGUS 软件下的工程就会发现已经改好了: RTC显示有两种格式,一种是表盘时钟显示形式,需要 RTC 硬件支持;另一种则是文本显示形式。这里选择文本显示形式。 进入 001.bmp 的设计页面,选择文本RTC显示控件放置到背景图片下: 文本显示控件就在 RTC 显示控件边上: ![]() 下载工程,上电测试: 这里摒弃了按钮效果,只设置页面切换功能,顺便还建立了主页面和后面几张背景之间的触控跳转关系: PS:DEMO 里的 CFG 文件相当于出厂配置,没有特殊需求基本不用修改。如果一定要改可以参考对应型号的应用开发指南。 2.5 串口通信:RTC读取与修改 从之前的实际显示效果可以看出迪文屏里的 RTC 实际参数和软件上预览的 RTC 参数并不相同。这里利用串口重新配置一下 RTC 参数。在手册上找到关于 RTC 的配置方法: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |